
//1. setTimeout
// function hySetTimeout( fn, duration) {
//   fn()
// }
// hySetTimeout(function () {
//
// }, 3000)

//setTimeout里面的实现调用function函数是独立函数调用，所以this指向的window
// setTimeout(function () {
//     console.log(this)
// },2000)

//2. 监听点击
// const boxDiv = document.querySelector('.box')
// // boxDiv.onclick = function () {
// //     console.log(this)  //这里的this指向class是box的元素
// // }
//
// boxDiv.addEventListener('click', function () {
//     console.log(this) //这里的this也是指向class是box的元素
// })



//3. 数组 forEach/map/filter/find
var names = ['abc','cba','nba']
// names.forEach(function (item){
//     console.log(item,this)  //内部是独立函数调用，所以this是指向window
// })
names.forEach(function (item){
    console.log(item,this)  //内部是独立函数调用，但这里指定了this的指向
}, 'kkkkzx')

names.map(function (item) {
    console.log(item, this) //this的指向是oiu，否则默认是独立函数调用，指向的是window
},'oiu')












